home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HAM Radio 1997
/
HAM Radio 1997.iso
/
vcls
/
wfc007.000
/
wfc008.txt
< prev
Wrap
Text File
|
1996-04-08
|
9KB
|
145 lines
What is WFC (Win32 Foundation Classes)? It is a set of C++ classes built upon
MFC that let you develop Win32 applications. It encapsulates different
groups of API's (like the Registry) into C++ classes to reduce the learning
curve. For the most part I don't want to overlap MFC in functionality.
However, I have a TCP/IP socket class and so does MFC (but mine works in
Console applications). I am not the author of all of the code. If I've seen
code that I can use I've rolled it into WFC. There's a lot of classes that
encapsulate data structures. The reason for this is my programmers are
constantly having problems initializing structures that have a data member
holding the size of the structure (i.e. cbSize or dwLength members).
Microsoft doesn't do a real good job of pointing out that you need to set
the size of data structures *before* calling API's. This leads to a lot of
heartache for first-time NT programmers (in my experience). Also, all
members of the structures are zeroed out before use. WFC will be extended
as it is used in more and more applications.
WFC contains no exception handling. Why? I hate exception handling. It is a
religious issue with me. I prefer to check for failure all over the place.
How much does WFC cost? Nothing. Use it any way you like. Please let me know
of bugs or extensions so I can roll them into the next release. Feel free
to tell me some good news too!
Here's a list of the classes in WFC008
CAccessAllowedEntry - Encapsulates the ACCESS_ALLOWED_ACE structure.
CAccessControlEntryHeader - Encapsulates the ACE_HEADER structure.
CAccessControlList - Encapsulates the ACL structure.
CAccessDeniedEntry - Encapsulates the ACCESS_DENIED_ACE structure.
CAccessTimeout - Encapsulates the ACCESSTIMEOUT structure.
CBitmapCoreHeader - Encapsulates the BITMAPCOREHEADER structure.
CBitmapFileHeader - Encapsulates the BITMAPFILEHEADER structure.
CBitmapInfoHeader - Encapsulates the BITMAPINFOHEADER structure.
CCircle - Draws a circle on the screen.
CCompVars - Encapsulates the COMPVARS structure.
CColorAdjustment - Encapsulates the COLORADJUSTMENT structure.
CDeviceControlBlock - Encapsulates DCB structure.
CDocInfo - Encapsulates the DOCINFO structure.
CDrawingObjectGrid - A grid of drawing objects like CCircle, etc.
CDummyFile - A class that traps all calls to CFile that
would blow up if you weren't a disk file.
CEllipse - Draws an ellipse on the screen.
CEventLog - The event logger. Makes logging easier.
CFilterKeys - Encapsulates the FILTERKEYS structure.
CLabeledGrid - A subclass of CDrawingObjectGrid that adds
text labels to the objects.
CListeningSocket - Establishes a socket that people can connect
to (ie, makes a server socket)
CLZFile - Unfinished class. Will be derived from CFile
to handle LZFiles (compressed files).
CMemoryStatus - Encapsulates the MEMORYSTATUS structure.
CMouseKeys - Encapsulates the MOUSEKEYS structure.
CNamedPipe - Unfinished class. Will be derived from CFile
CNetwork - Base class for all networking functionality
CNetworkConnectionInformation - Class based on CONNECTION_INFO_1 structure
CNetworkConnections - Class that plays with network connections
CNetworkFileInformation - Class based on FILE_INFO_3 structure
CNetworkFiles - Class that plays with network files
CNetworkResources - Class that plays with network resources
CNetworkResourceInformation - Class based on NETRESOURCE structure
CNetworkSessions - Class that plays with network sessions
CNetworkSessionInformation - Class based on SESSION_INFO_502 structure
CNetworkShareInformation - Class based on SHARE_INFO_2 structure
CNetworkShares
CNetWorkstation - Gathers information about the workstation
COutlineTextMetric - Encapsulates the OUTLINETEXTMETRIC structure.
COverlapped - Plays with OVERLAPPED structure.
CPerfCounterDefinition - Encapsulates the PERF_COUNTER_DEFINITION
structure.
CPerfInstanceDefinition - Encapsulates the PERF_INSTANCE_DEFINITION
structure.
CPixelFormatDescriptor - Encapsulates the PIXELFORMATDESCRIPTOR structure.
CRAS - Remote Access Services. Partially tested, it
does dials phone book entries...
CRASAuthenticationMessageBlock - Encapsulates the RASAMB structure.
CRASInternetProtocol - Encapsulates the RASPPPIP structure.
CRASInternetworkPacketExchange - Encapsulates the RASPPPIPX structure.
CRASNetBEUIFramer - Encapsulates the RASPPPNBF structure.
CRasterizerStatus - Encapsulates the RASTERIZER_STATUS structure.
CRectangle - Draws a rectangle on the screen
CRegistry - Encapsulates the Registration Database
(Registry API)
CRoundedRectangle - Draw a rectangle with rounded corners
CSecurityAttributes - Encapsulates the SECURITY_ATTRIBUTES
structure.
CSecurityQualityOfService - Encapsulates the SECURITY_QUALITY_OF_SERVICE
structure.
CSerialFile - Treats the serial port like it was a CFile
CSerialPort - Under developement. Will handle serial ports (multi-threaded).
CServer - Decrypts data scrambled by NetServerGetInfo()
CService - NT Services class.
CServiceControlManager - Plays with the Service Control Manager.
CServiceStatus - Encapsulates the ENUM_SERVICE_STATUS structure.
CSessionInformation - Session iformation based on SESSION_INFO_502
structure. Basically, gives you same info as
Control Panel->Server->Users->Connected Users
CSimpleSocket - Base class for TCP/IP sockets. Derived from
CDummyFile.
CSimpleSocketFile - Turns an existing CSimpleSocket into a CFile.
Generally, this is called from
CListeningSocket::OnNewConnection()
CSoundSentry - Encapsulates the SOUNDSENTRY structure.
CSquare - Draws a square on the screen
CSquiggle - A type of CRectangle that makes creating
oscilliscope type displays real easy
CSquiggleData - Data taken from o-scopes to be given to
CSquiggle
CStickyKeys - Encapsulates the STICKYKEYS structure.
CSystemAuditEntry - Encapsulates the SYSTEM_AUDIT_ACE structure.
CTalkingSocket - A socket you can use to connect to existing
sockets (you connect to a server).
CTape - Under development. Will encapsulate the Tape
API. Derived from CFile...
CTextMetric - Encapsulates the TEXTMETRIC structure.
CToggleKeys - Encapsulates the TOGGLEKEYS structure.
CUniformResourceLocator - Plays with URL's
Example: http://www.microsoft.com/hello.html
CUniversalNamingConvention - Plays with UNC's
Example: \\buckaroo\public\neato\readme.txt
CWaitCursor - Ye Olde Wait Cursor class
CWindowPlacement - Encapsulates the WINDOWPLACEMENT structure.
CWorkstationInformation - Patterned after WKSTA_INFO_102, used in
CNetWorkstation::Enumerate
CWorkstationUser - Patterned after WKSTA_USER_INFO_1, used in
CNetWorkstation::Enumerate
Miscellaneous Functions:
Convert_NERR_Code_to_String - Converts NERR_* error codes to text; the
FormatMessage() trick doesn't work on these
error codes
What's New in Release 008:
CLZFile - Handles the LZxxx API
Bug Fixes in Release 008:
Sam Blackburn
CI$: 76300,326
Internet: sammy@sed.csc.com